home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-04-30 | 3.1 KB | 139 lines | [TEXT/CWIE] |
- // =============================================================================
- //
- // >>> ⌐ 1996-1997 Microsoft Corporation. All rights reserved. <<<
- //
- // =============================================================================
-
-
- #ifndef _H_CCPContainer
- #define _H_CCPContainer
-
- /*
- !CCPContainer();
- ªC ----- Connection point container class
- CCPContainer methods
-
- DERIVED FROM:
- IConnectionPintContainer
- */
-
-
- class CCPContainer:
- public IConnectionPointContainer
- {
-
- public:
- // *** CCPContainer methods ***
- CCPContainer(short NumConnections);
- /* ñ1 Constructor
- ** INPUT:
- ** short initializer for the size of the connection point array
- */
-
-
- virtual ~CCPContainer(void);
- /* ñ1 Destructor
- ** INPUT:
- ** void
- */
-
-
-
- STDMETHOD(AddConnectionPoint)(IID RefID);
- /* ñ1 CCPContainer method
- ** INPUT:
- ** IID the reference id for the new connection point
- ** RETURNS:
- ** long S_OK - everything is fine
- **
- ** Add a new connection point interface.
- */
-
-
- virtual void ReleaseConnections(void);
- /* ñ1 CCPContainer method
- ** INPUT:
- ** void
- ** RETURNS:
- ** void
- **
- ** Have all connection points release their connections.
- */
-
-
-
- // *** IUnknown methods ***
- STDMETHOD(QueryInterface)(REFIID RefID, void** Obj);
- /* ñ1 IUnknown method
- ** INPUT:
- ** REFIID the interface id being queried for
- ** void ** pointer to the interface being queried for
- ** RETURNS:
- ** long S_OK - interface found
- ** E_NOINTERFACE - no interface found
- **
- ** Returns a pointer to the specified interface on a component to which a
- ** client currently holds an interface pointer. The following interfaces
- ** are accepted: IID_IConnectionPointContainer and IID_IUnknown.
- */
-
-
- STDMETHOD_(Uint32, AddRef)(void);
- /* ñ1 IUnknown method
- ** INPUT:
- ** void
- ** RETURNS:
- ** Uint32 the ref count for the object
- **
- ** Add a reference to this object.
- */
-
-
- STDMETHOD_(Uint32, Release)(void);
- /* ñ1 IUnknown method
- ** INPUT:
- ** void
- ** RETURNS:
- ** Uint32 the reference count
- **
- ** Decrements the reference count for the calling interface on a object. If
- ** the reference count on the object falls to zero, the object is freed.
- */
-
-
-
- // IConnectionPointContainer methods
- STDMETHOD(EnumConnectionPoints)(THIS_ IEnumConnectionPoints** EnumCP);
- /* ñ1 IConnectionPointContainer method
- ** INPUT:
- ** IEnumConnectionPoints ** output: the enumeration of connection points
- ** RETURNS:
- ** long S_OK - everything is fine
- **
- ** Set up an enumeration of connection points for the container.
- */
-
-
- STDMETHOD(FindConnectionPoint)(THIS_ REFIID RefID, IConnectionPoint** ConnectionPoint);
- /* ñ1 IConnectionPointContainer method
- ** INPUT:
- ** REFIID input: the interface id of the requested connection point
- ** IConnectionPoint ** output: the connection point
- ** RETURNS:
- ** long S_OK - everything is fine
- ** E_NOINTERFACE - interface doesn't exist
- **
- ** Find the connection point with the specified interface id.
- */
-
-
-
- private:
- Uint32 m_RefCount;
- LArray* m_ConnectionPoints;
- };
-
- #endif // _H_CCPContainer
-
-
-